#ifndef _BIRD_H_
#define _BIRD_H_

enum{
    INVALID_COLOR = 0,
    RED = 1,
    GREEN = 2,
};

struct Bird{
    char *Name;
    char *Addr;
    int Color;
    int Weight;

    void (*SetName)(struct Bird *Bird, char *Name);
    void (*SetAddr)(struct Bird *Bird, char *Addr);
    void (*SetColor)(struct Bird *Bird, const int Color);
    void (*SetWeight)(struct Bird *Bird, const int Weight);

    char *(*GetName)(struct Bird *Bird);
    int (*GetColor)(struct Bird *Bird);

    void (*LayEggs)(struct Bird *Bird);
};
extern void BirdInit(struct Bird *Bird);
extern void BirdDeinit(struct Bird *Bird);

#endif